<!DOCTYPE html>





<html lang="zh-CN">
<head>
  <!-- hexo-inject:begin --><!-- hexo-inject:end --><meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2">
<meta name="theme-color" content="#222">
<meta name="generator" content="Hexo 4.2.1">
  <link rel="apple-touch-icon" sizes="180x180" href="/sunpages/images/apple-touch-icon-next.png?v=7.4.0">
  <link rel="icon" type="image/png" sizes="32x32" href="/sunpages/images/favicon-32x32-next.png?v=7.4.0">
  <link rel="icon" type="image/png" sizes="16x16" href="/sunpages/images/favicon-16x16-next.png?v=7.4.0">
  <link rel="mask-icon" href="/sunpages/images/logo.svg?v=7.4.0" color="#222">

<link rel="stylesheet" href="/sunpages/css/main.css?v=7.4.0">


<link rel="stylesheet" href="/sunpages/lib/font-awesome/css/font-awesome.min.css?v=4.7.0">


<script id="hexo-configurations">
  var NexT = window.NexT || {};
  var CONFIG = {
    root: '/sunpages/',
    scheme: 'Pisces',
    version: '7.4.0',
    exturl: false,
    sidebar: {"position":"left","display":"post","offset":12,"onmobile":false},
    copycode: {"enable":true,"show_result":false,"style":null},
    back2top: {"enable":true,"sidebar":false,"scrollpercent":true},
    bookmark: {"enable":false,"color":"#222","save":"auto"},
    fancybox: false,
    mediumzoom: false,
    lazyload: false,
    pangu: false,
    algolia: {
      appID: '',
      apiKey: '',
      indexName: '',
      hits: {"per_page":10},
      labels: {"input_placeholder":"Search for Posts","hits_empty":"We didn't find any results for the search: ${query}","hits_stats":"${hits} results found in ${time} ms"}
    },
    localsearch: {"enable":true,"trigger":"auto","top_n_per_article":1,"unescape":false,"preload":false},
    path: 'search.xml',
    motion: {"enable":true,"async":false,"transition":{"post_block":"fadeIn","post_header":"slideDownIn","post_body":"slideDownIn","coll_header":"slideLeftIn","sidebar":"slideUpIn"}},
    translation: {
      copy_button: '复制',
      copy_success: '复制成功',
      copy_failure: '复制失败'
    },
    sidebarPadding: 40
  };
</script>

  <meta name="description" content="摘要物联网被誉为社会的下一个发展浪潮，智能家居、企业和城市装备着大量的物联网设备，然而这些智能环境的控制者并没有充分意识到这些物联网设备的价值，更不用说能否让这些设备抵御网络攻击了。在这片论文中，我们通过使用在网络级获得的流量特性开发用于物联网设备的强大的（robust）框架来应对（address）这个挑战。我们的工作主要分为四个部分。首先，我们搭建了一个拥有28个不同IoT设备的的智能环境，这些">
<meta property="og:type" content="article">
<meta property="og:title" content="对论文《Classifying IoT Devices in Smart Environments Using Network Traffic Characteristics》的翻译">
<meta property="og:url" content="https://yuandaima1.gitee.io/sunpages/2019/09/12/18tmc/index.html">
<meta property="og:site_name" content="SunPages">
<meta property="og:description" content="摘要物联网被誉为社会的下一个发展浪潮，智能家居、企业和城市装备着大量的物联网设备，然而这些智能环境的控制者并没有充分意识到这些物联网设备的价值，更不用说能否让这些设备抵御网络攻击了。在这片论文中，我们通过使用在网络级获得的流量特性开发用于物联网设备的强大的（robust）框架来应对（address）这个挑战。我们的工作主要分为四个部分。首先，我们搭建了一个拥有28个不同IoT设备的的智能环境，这些">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-023850.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-031005.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-055154.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-060240.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-062418.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-063141.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-064238.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-064828.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-065458.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-065922.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-073520.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-082106.jpg">
<meta property="og:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-082825.jpg">
<meta property="article:published_time" content="2019-09-12T12:06:19.000Z">
<meta property="article:modified_time" content="2020-05-13T10:19:27.749Z">
<meta property="article:author" content="sunhanwu">
<meta property="article:tag" content="机器学习">
<meta property="article:tag" content="IoT">
<meta property="article:tag" content="网络流量">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-023850.jpg">
  <link rel="canonical" href="https://yuandaima1.gitee.io/sunpages/2019/09/12/18tmc/">


<script id="page-configurations">
  // https://hexo.io/docs/variables.html
  CONFIG.page = {
    sidebar: "",
    isHome: false,
    isPost: true,
    isPage: false,
    isArchive: false
  };
</script>

  <title>对论文《Classifying IoT Devices in Smart Environments Using Network Traffic Characteristics》的翻译 | SunPages</title>
  








  <noscript>
  <style>
  .use-motion .brand,
  .use-motion .menu-item,
  .sidebar-inner,
  .use-motion .post-block,
  .use-motion .pagination,
  .use-motion .comments,
  .use-motion .post-header,
  .use-motion .post-body,
  .use-motion .collection-header { opacity: initial; }

  .use-motion .logo,
  .use-motion .site-title,
  .use-motion .site-subtitle {
    opacity: initial;
    top: initial;
  }

  .use-motion .logo-line-before i { left: initial; }
  .use-motion .logo-line-after i { right: initial; }
  </style>
</noscript><!-- hexo-inject:begin --><!-- hexo-inject:end -->

</head>

<body itemscope itemtype="http://schema.org/WebPage" lang="zh-CN">
  <!-- hexo-inject:begin --><!-- hexo-inject:end --><div class="container use-motion">
    <div class="headband"></div>

    <header id="header" class="header" itemscope itemtype="http://schema.org/WPHeader">
      <div class="header-inner"><div class="site-brand-container">
  <div class="site-meta">

    <div>
      <a href="/sunpages/" class="brand" rel="start">
        <span class="logo-line-before"><i></i></span>
        <span class="site-title">SunPages</span>
        <span class="logo-line-after"><i></i></span>
      </a>
    </div>
        <h1 class="site-subtitle" itemprop="description">屁话少说,放码过来！</h1>
      
  </div>

  <div class="site-nav-toggle">
    <button aria-label="切换导航栏">
      <span class="btn-bar"></span>
      <span class="btn-bar"></span>
      <span class="btn-bar"></span>
    </button>
  </div>
</div>


<nav class="site-nav">
  
  <ul id="menu" class="menu">
      
      
      
        
        <li class="menu-item menu-item-home">
      
    

    <a href="/sunpages/" rel="section"><i class="menu-item-icon fa fa-fw fa-home"></i> <br>首页</a>

  </li>
      
      
      
        
        <li class="menu-item menu-item-about">
      
    

    <a href="/sunpages/about/" rel="section"><i class="menu-item-icon fa fa-fw fa-user"></i> <br>关于</a>

  </li>
      
      
      
        
        <li class="menu-item menu-item-tags">
      
    

    <a href="/sunpages/tags/" rel="section"><i class="menu-item-icon fa fa-fw fa-tags"></i> <br>标签</a>

  </li>
      
      
      
        
        <li class="menu-item menu-item-categories">
      
    

    <a href="/sunpages/categories/" rel="section"><i class="menu-item-icon fa fa-fw fa-th"></i> <br>分类</a>

  </li>
      
      
      
        
        <li class="menu-item menu-item-archives">
      
    

    <a href="/sunpages/archives/" rel="section"><i class="menu-item-icon fa fa-fw fa-archive"></i> <br>归档</a>

  </li>
      
      
      
        
        <li class="menu-item menu-item-photos">
      
    

    <a href="/sunpages/photo/" rel="section"><i class="menu-item-icon fa fa-fw fa-image"></i> <br>Photos</a>

  </li>
      <li class="menu-item menu-item-search">
        <a href="javascript:;" class="popup-trigger">
        
          <i class="menu-item-icon fa fa-search fa-fw"></i> <br>搜索</a>
      </li>
    
  </ul>

</nav>
  <div class="site-search">
    <div class="popup search-popup">
    <div class="search-header">
  <span class="search-icon">
    <i class="fa fa-search"></i>
  </span>
  <div class="search-input" id="search-input"></div>
  <span class="popup-btn-close">
    <i class="fa fa-times-circle"></i>
  </span>
</div>
<div class="algolia-results">
  <div id="algolia-stats"></div>
  <div id="algolia-hits"></div>
  <div id="algolia-pagination" class="algolia-pagination"></div>
</div>

  
</div>
<div class="search-pop-overlay"></div>

  </div>
</div>
    </header>

    
  <div class="back-to-top">
    <i class="fa fa-arrow-up"></i>
    <span>0%</span>
  </div>

  <a href="https://github.com/sunhanwu" class="github-corner" title="Follow me on GitHub" aria-label="Follow me on GitHub" rel="noopener" target="_blank"><svg width="80" height="80" viewBox="0 0 250 250" aria-hidden="true"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a>


    <main id="main" class="main">
      <div class="main-inner">
        <div class="content-wrap">
            

          <div id="content" class="content">
            

  <div id="posts" class="posts-expand">
      <article itemscope itemtype="http://schema.org/Article">
  
  
  
  <div class="post-block post">
    <link itemprop="mainEntityOfPage" href="https://yuandaima1.gitee.io/sunpages/sunpages/2019/09/12/18tmc/">

    <span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
      <meta itemprop="name" content="sunhanwu">
      <meta itemprop="description" content="Talk is cheap, show me the code!">
      <meta itemprop="image" content="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-12-logo.jpg">
    </span>

    <span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
      <meta itemprop="name" content="SunPages">
    </span>
      <header class="post-header">
        <h2 class="post-title" itemprop="name headline">对论文《Classifying IoT Devices in Smart Environments Using Network Traffic Characteristics》的翻译

          
        </h2>

        <div class="post-meta">
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="fa fa-calendar-o"></i>
              </span>
              <span class="post-meta-item-text">发表于</span>

              
                
              

              <time title="创建时间：2019-09-12 20:06:19" itemprop="dateCreated datePublished" datetime="2019-09-12T20:06:19+08:00">2019-09-12</time>
            </span>
          
            

            
              <span class="post-meta-item">
                <span class="post-meta-item-icon">
                  <i class="fa fa-calendar-check-o"></i>
                </span>
                <span class="post-meta-item-text">更新于</span>
                <time title="修改时间：2020-05-13 18:19:27" itemprop="dateModified" datetime="2020-05-13T18:19:27+08:00">2020-05-13</time>
              </span>
            
          
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="fa fa-folder-o"></i>
              </span>
              <span class="post-meta-item-text">分类于</span>
              
                <span itemprop="about" itemscope itemtype="http://schema.org/Thing"><a href="/sunpages/categories/%E5%AD%A6%E4%B9%A0%E7%A7%91%E7%A0%94/" itemprop="url" rel="index"><span itemprop="name">学习科研</span></a></span>

                
                
              
            </span>
          

          
  
  <span class="post-meta-item">
    
      <span class="post-meta-item-icon">
        <i class="fa fa-comment-o"></i>
      </span>
        
      
      <span class="post-meta-item-text">Valine：</span>
    
    <a title="valine" href="/sunpages/2019/09/12/18tmc/#comments" itemprop="discussionUrl"><span class="post-comments-count valine-comment-count" data-xid="/sunpages/2019/09/12/18tmc/" itemprop="commentCount"></span></a>
  </span>
  
  
          <br>
            <span class="post-meta-item" title="本文字数">
              <span class="post-meta-item-icon">
                <i class="fa fa-file-word-o"></i>
              </span>
              
                <span class="post-meta-item-text">本文字数：</span>
              
              <span>12k</span>
            </span>
          
            <span class="post-meta-item" title="阅读时长">
              <span class="post-meta-item-icon">
                <i class="fa fa-clock-o"></i>
              </span>
              
                <span class="post-meta-item-text">阅读时长 &asymp;</span>
              
              <span>11 分钟</span>
            </span>
          

        </div>
      </header>

    
    
    
    <div class="post-body" itemprop="articleBody">

      
        <h2 id="摘要"><a href="#摘要" class="headerlink" title="摘要"></a>摘要</h2><p>物联网被誉为社会的下一个发展浪潮，智能家居、企业和城市装备着大量的物联网设备，然而这些智能环境的控制者并没有充分意识到这些物联网设备的价值，更不用说能否让这些设备抵御网络攻击了。在这片论文中，我们通过使用在网络级获得的流量特性开发用于物联网设备的强大的（robust）框架来应对（address）这个挑战。我们的工作主要分为四个部分。首先，我们搭建了一个拥有28个不同IoT设备的的智能环境，这些IoT设备包括监控摄像头、灯、插座、传感器以及健康监控传感器，我们从这些基础环境中收集并整合长达6个月的网络流量，这些流量的一个子集将会被公开用于开源社区研究；第二，我们使用统计属性对底层网络流量特性提供了一些见解，这些统计属性包括活动周期、端口号、信号模式和加密模式;第三，我们开发了一个基于分类算法的多级机器学习模型（multi-stage machine）并且演示（demonstrate ）它在区分具体的IoT设备的能力，基于他们的网络活动准确率超过99%；最后我们讨论了成本、速度之间的权衡（trade-offs）和应用于真实网络的表现。我们的研究推动了智能环境管理者监控他的IoT设备的表现、功能和网络安全性的方式，而不需要任何特殊设备和协议。</p><a id="more"></a>
<h2 id="介绍"><a href="#介绍" class="headerlink" title="介绍"></a>介绍</h2><p>联网设备的数量正在急剧膨胀（balloon）,迎来（ushering）物联网的时代。物联网（IoT）指的是数以亿计的低功耗设备与设备之间或与远端的服务器之间在互联网上自主（autonomously）的通信。IoT设备包括每天都在使用的物品，例如台灯、照相机、传感器、门锁、温控器（thermostats）、电源开源和家用电器，这些出货量已经达到了接近200亿在2020年。无数的IoT设备期待找到它们未来在家庭、企业、校园、城市中的方式，创造（engender）有利于我们社会和生活的智能环境。</p>
<p>IoT设备的数量增长的很快，然而带来了一个重要的问题。智能环境的管理者发现很难去确定哪些设备连接了他们的网络，更加难以探知（ascertain）每个设备是否工作正常，这是一个组织管理这些资产的主要任务，往往需要几个不同的部门合作。举例来说，在一个地区委员会（council）来说，灯管传感器可能由基础设施团队安装、污水和垃圾传感器可能被卫生部门（sanitation department）安装、求生摄像头可能被地区机房管理，协调各部门以获取IoT设备的信息不仅耗时繁重而且错误率高，使得在任何时候用弄清楚哪些IoT设备正在运行成为不可能。及时获得IoT设备的可见性对于管理者来说至关重要。那些负责确保设备的网络安全任务的人员需要提供必要的服务质量、并在出现问题的时候迅速隔离.思科最近的安全报告一直在强调（emphasize）可见性的重要性，特别是最近出现的两件事显得尤为突出。2017年7月组成赌场的鱼缸传感器和2017年2月从自己的自动售货机攻击大学校园网。这两个例子中，网络分段都有可能阻止攻击，更好的可见性可以快速隔离，以限制网络攻击对企业网络的破坏</p>
<p>可以预期，可以通过其MAC地址和DHCP协商来识别设备。然而，这将面临几个挑战：首先IoT设备制造商通常使用第三方提供的NIC（网卡），因此，MAC地址的组织唯一标识符（OUI）前缀可能无法传达有关IoT设备的任何信息；其次，恶意设备可能会欺骗MAC地址;许多物联网设备不在其DHCP请求中设置主机名选项；事实上，我们发现我们研究的大约一半的物联网设备没有显示它们的主机名，如表1所示;</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-023850.jpg" width="800"></div><br>即使物联网设备暴露其主机名，它也可能并不总是有意义的（例如表1中的Withings婴儿监视器的WBP-EE4C）；最后，用户可以更改这些主机名（例如HP打印机可以被赋予任意主机名）。由于这些原因，基于DHCP并不是一个很好的解决方案用于正确识别大规模的设备。</p>
<p>这篇论文中，我们通过开发一个强大的框架来解决上述问题，<strong><em>该框架除了使用网络流量特征导出的统计属性的高精度的一类非物联网设备外，还对每个物联网设备进行分类</em></strong>，从定性上讲，大多数物联网设备都会偶尔发送短时间的数据。定量的来说，我们在[6]中的初步工作是首次尝试研究IoT设备在一次流量爆发期间发送多少流量以及它们在活动之间闲置多长时间。我们还评估了它们执行了多少信号量（例如域名查询使用DNS，时间同步使用NTP）与他们产生的数据流量进行比较。本文通过对包含28种不同物联网设备的试验台在更长时间（6个月）内捕获的跟踪数据采用更全面（comprehensive）的属性集，对我们之前的工作进行了重大扩展。</p>
<p>毫无疑问，了解物联网流量的性质变得越来越重要，<strong><em>这样做有助于包含不必要的多播/广播流量，从而减少它们对其他应用程序的影响</em></strong>，它还使智能城市和企业的运营商能够根据环境，健康或安全应用所需的可靠性，损失和延迟来确定其网络的适当性能水平。然而，表征物联网流量的最令人信服的理由是检测和减轻网络安全攻击。众所周知，物联网设备的性质和设计易于渗透，关于物联网设备如何被破坏并用于发动大规模攻击的新故事正在出现.物联网设备的巨大异构性促使研究人员提出网络级安全机制，分析流量模式以识别攻击,这些方法的成功依赖于对“正常”物联网流量配置文件的良好理解。</p>
<p>我们在这项工作中的主要重点是建立一个基于各种网络流量特性的机器学习框架，以识别和分类网络上物联网设备的默认（即基线）行为,未来可能会使用这样的框架来检测物联网设备的异常行为（可能是由于网络攻击）,这种异常检测方案超出了本文的范围。本文基于网络流量特征填补了与物联网设备分类相关的文献中的重要空白。我们的贡献是：</p>
<ol>
<li>我们使用28个IoT设备搭建了一个实验室，以实现智能环境。这些设备包括相机，灯，插头，运动传感器，电器和健康监视器。我们从这种环境中收集和综合数据，为期6个月。我们的数据子集可供研究社区使用。</li>
<li>我们确定关键的统计属性，如活动周期，端口号，信令模式和密码套件，并使用它们来深入了解基础网络流量特征</li>
<li>我们开发了一种基于多阶段机器学习的分类算法，并证明了它能够根据网络行为识别具有超过99％精度的特定物联网设备</li>
<li>我们通过检查分类器的成本，速度和准确性之间的权衡来实时评估分类框架的部署。</li>
</ol>
<p>本文的其余部分安排如下：§2描述了相关的先前工作。我们在§3中介绍了IoT设置和数据跟踪，并在§4中描述了各种IoT设备的流量属性。在§5中，我们提出了基于机器学习的多阶段设备分类方法并评估其性能，然后在§6中讨论了所提出的系统的实时操作。该论文在§7中得出结论。</p>
<h2 id="相关工作"><a href="#相关工作" class="headerlink" title="相关工作"></a>相关工作</h2><p>有大量的工作表征一般的互联网流量。这些先前的工作主要集中在应用程序检测（例如Web浏览，游戏，邮件，Skype VoIP，点对点等）。然而，专注于表征物联网流量（也称为机器对机器或M2M流量）的研究仍处于起步阶段。</p>
<p><strong>实证痕迹分析</strong>:[20]中的工作是第一次深入研究M2M流量性质的大规模研究之一。需要了解M2M流量是否对蜂窝网络的设计和管理提出了新的挑战.该工作使用跨越一级蜂窝网络运营商一周的流量跟踪，并将M2M流量与传统智能手机流量从多个不同角度进行比较 - 时间变化，移动性，网络性能等。该研究通知网络运营商在管理网络时要认识到这些因素</p>
<p>在[21]中，作者指出单个M2M设备产生的流量可能很小，但数百或数千个M2M设备产生的总流量将是巨大的,这些观察结果在某种程度上得到了[22]，[23]的证实，其中指出，远程患者监测应用预计每天产生约0.35 MB，智能电表每天产生约0.07 MB。</p>
<p><strong>聚合流量模型</strong>:在[24]中提出了耦合马尔可夫调制泊松过程框架来捕获单个机器类型通信的行为以及数万个M2M设备的集体行为。CMMPP框架的复杂性随着M2M设备的数量呈线性增长，使其有效地大规模合成M2M流量,在[25]中，作者表明可以将M2M设备的（流量）状态分为三个通用类别，即定期更新，事件驱动和有效负载交换，以及一些使用这些类型的建模策略。通过车队管理中的用例示出了模型配件的图示，该车辆管理包括由运输公司运行的1000辆卡车.该拟合基于来自2G / 3G网络的测量的M2M流量,在[26]中构建了一个简单的模型，用于估算无线传感器网络中连接的家庭中产生的M2M流量。由于传感器的行为非常特定于应用，因此该工作识别可归因于任何传感器设备的某些常见通信模式.使用这些属性，提出了四个广义方程来估计由传感器网络启用的连接公寓/家庭产生的流量。</p>
<p><strong>使用机器学习</strong>：在文献中已经提出了各种基于机器学习的分析方法来对交通应用进行分类或识别典型计算机网络的恶意软件/僵尸网络。[27]中的工作使用深度学习来分类流，例如HTTP，SMTP，Telnet，QUIC，Office365和YouTube，通过考虑六个特征，即源/目的端口号，有效载荷量，TCP窗口大小，到达间隔时间和从流的前20个包中提取的流量方向。[28]中开展的工作表明，僵尸网络具有可识别的流量模式，可以通过考虑连续流量之间的平均时间，流量持续时间，入站/出站流量以及流量开始时间内的傅里叶变换等特征进行分类。通过将这些流级特征与包级别属性（包括包大小，有效载荷的字节分布，包的到达间隔时间和TLS握手元数据）相结合，在[29]和[30]中增强了对网络上恶意活动的检测（即密码套件代码）。此外，作者发布了一个名为Joy [31]的基于libpcap的开源工具，用于从网络流量的被动捕获中提取这些功能</p>
<p>在物联网的背景下，[32]使用机器学习来对来自网络上的授权设备的单个TCP流进行分类。它使用了300多个属性（数据包级和流级），但最有影响力的是数据包生存时间（TTL）的最小值，中值和平均值，发送和接收的总字节数，包的总数重置（RST）标志，以及服务器的Alexa排名</p>
<p>虽然上述所有工作都做出了重要贡献，但他们并未在智能环境（如家庭，城市，校园或企业）中对物联网设备进行细粒度表征和分类。此外，还没有开发出能够根据网络流量特征进行物联网设备分类的统计模型，最重要的是，先前的工作不会公开任何数据集供研究社区使用和构建。我们的工作克服了这些缺点。</p>
<h2 id="物联网流量收集和整合"><a href="#物联网流量收集和整合" class="headerlink" title="物联网流量收集和整合"></a>物联网流量收集和整合</h2><p>在本节中，我们将介绍用于收集和合成来自各种物联网设备的流量的智能环境基础架构</p>
<h3 id="实验试验台"><a href="#实验试验台" class="headerlink" title="实验试验台"></a>实验试验台</h3><p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-031005.jpg" width="800"></div><br>图1描述了“智能环境”的真实体系结构，它通过其（有线/无线）网络基础设施为各种物联网和非物联网设备提供服务，并允许它们通过网关与互联网服务器通信。使用OpenWrt固件版本Chaos Calmer（15.05.1，r48532）刷新的TP-Link接入点充当公共互联网的网关。我们还在网关上安装了额外的OpenWrt软件包，即用于捕获流量的tcpdump，用于编写脚本的bash（4.3.39-1），用于在网关上安装外部USB存储的块安装包，kmod-usb-core和kmod-usb-storage（3.18.23-1），用于将流量跟踪数据存储在USB存储器上。</p>
<p>在我们的实验室设置中，TP-Link接入点的WAN接口通过大学网络连接到公共Internet，而IoT设备分别连接到LAN和WLAN接口。我们的智能环境共有28个独特的物联网设备，代表不同的类别以及几个非物联网设备，在这里，物联网是指特定用途的互联网连接设备（例如摄像机和烟雾传感器），而通用设备（例如电话和笔记本电脑）属于非物联网类别。</p>
<p>物联网设备包括摄像头（Nest Dropcam，Sam-sung SmartCam，Netatmo Welcome，Belkin摄像头，TP-Link日夜云摄像头，Withings智能婴儿监视器，金丝雀摄像头，八月门铃，铃铛门铃），开关和触发器（iHome） ，TP-Link智能插头，Belkin Wemo运动传感器，Belkin Wemo Switch），集线器（Smart Things，Amazon Echo），空气质量传感器（NEST Protect烟雾报警器，Netatmo气象站，Awair空气质量监测器），电子设备（Triby扬声器， PIXSTAR Photoframe，惠普打印机，Hello芭比娃娃，谷歌Chromecast），医疗设备（带智能秤，Withings Aura智能睡眠传感器，Blipcare血压计）和灯泡（Phips Hue和LiFX智能灯泡）。一些非物联网设备也连接到测试平台，如笔记本电脑，手机和Android平板电脑。平板电脑用于配置各个设备制造商推荐的物联网设备</p>
<h3 id="跟踪数据"><a href="#跟踪数据" class="headerlink" title="跟踪数据"></a>跟踪数据</h3><p>使用在OpenWrt上运行的tcpdump工具收集LAN端的所有流量。在流量跟踪中，物理设备与已知MAC地址（由于处于同一LAN中）或IP地址（即无NAT）之间进行一对一映射非常重要。捕获LAN上的流量允许我们使用MAC地址作为设备的标识符，以将其流量与包括网络中的许多其他设备的流量混合隔离。我们开发了一个脚本来自动化数据收集和存储过程。生成的跟踪作为pcap文件存储在连接到网关的1 TB存储的外部USB硬盘驱动器上，此设置允许连续几个月记录流量</p>
<p>我们从2016年10月1日至2017年4月13日开始在智能环境中记录网络流量为期26周。原始跟踪数据包含数据包标头和有效负载信息，数据收集和存储过程每天在当地时间午夜开始，使用OpenWrt上的Cron作业。我们在OpenWrt上编写了一个监控脚本，以确保数据收集/存储顺利进行。该脚本以5秒的间隔检查网关上运行的进程。如果日志记录过程未运行，则脚本会立即重新启动它，从而将任何数据丢失事件限制为仅5秒。为了使跟踪数据公开可用，我们在大学数据中心的虚拟机（VM）上设置了Apache服务器，并编写了一个脚本，用于定期将存储在硬盘驱动器上的前一天的跟踪数据传输到VM上。</p>
<p>两周的跟踪数据可以从<a href="http://iotanalytics.unsw.edu.au/下载。每日日志的大小在61" target="_blank" rel="noopener">http://iotanalytics.unsw.edu.au/下载。每日日志的大小在61</a> MB到2 GB之间变化，平均为365 MB</p>
<h2 id="IoT流量特征"><a href="#IoT流量特征" class="headerlink" title="IoT流量特征"></a>IoT流量特征</h2><p>我们现在使用对26个物联网设备的流量进行无源数据包级分析，在26周内进行观察，我们研究了广泛的物联网流量特性，包括活动模式（例如活动/睡眠期间的音量/时间分布）和信令（例如，请求的域名，使用的服务器端端口号和TLS握手交换）</p>
<p><strong>Iot流量构成</strong>：</p>
<ul>
<li>由设备自主产生的流量 - 例如不受人为干预影响的DNS，NTP等</li>
<li>由于用户与设备交互而产生的流量 - 例如Belkin Wemo传感器响应移动检测，Amazon Echo响应用户发出的语音命令，LiFX灯泡根据用户要求改变颜色和强度，Netatmo Welcome相机检测到占用者并指示LiFX灯泡打开并具体显示颜色，等等。</li>
</ul>
<p>我们的数据集很好地捕获了来自代表生活智能环境的实验室的这两种类型的物联网流量（即覆盖人类在环境中存在或不存在的时期）。</p>
<p>为了提供有关物联网流量特征的见解，我们在图2中显示了Amazon Echo和LiFX灯泡在24小时内看到的网络流量的桑葚图，选择这些设备仅用于说明目的，每个图描绘了由相应设备生成的流级信息。流量包括：</p>
<ul>
<li>单播或多播/广播</li>
<li>发往本地主机（LAN）或Internet服务器（WAN</li>
<li>绑定到协议（TCP，UDP，ICMP或IGMP）和端口号。</li>
</ul>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-055154.jpg" width="800"></div><br>图2提供了描绘两个设备所展示的潜在流量标志的视觉辅助，例如，Amazon Echo和LiFX灯泡都使用DNS（端口号53）和NTP（端口号123）。虽然Amazon Echo使用HTTP（端口号80），HTTPS（端口号443）和ICMP（端口号0），但LiFX灯泡不使用任何这些应用程序，此外，每个设备似乎与WAN服务器上的唯一端口号通信;用于Amazon Echo的TCP 33434和用于LiFX灯泡的UDP 56700，如图2（a）和2（b）中的顶部流程所示。最后，我们观察到Amazon Echo访问了许多域名，包括softwareupdates.amazon.com，device-metrics-su.amazon.com，example.org，pindorama.amazon.com和pool.ntp.org。然而，LiFX灯泡仅与两个域通信，即v2.broker.lifx.co和pool.ntp.org。</p>
<h3 id="IoT活动和卷模式（暂时先这么翻译）"><a href="#IoT活动和卷模式（暂时先这么翻译）" class="headerlink" title="IoT活动和卷模式（暂时先这么翻译）"></a>IoT活动和卷模式（暂时先这么翻译）</h3><p>我们从IoT设备的活动模式开始，这些模式由其流量属性定义，我们在每个流级别定义四个关键属性，以根据其网络活动来表征物联网设备：</p>
<ul>
<li><strong>流量</strong>：即下载和上传字节的总和</li>
<li><strong>流持续时间</strong>：即流中第一个和最后一个数据包之间的时间</li>
<li><strong>平均流量</strong>：即流量除以流量持续时间</li>
<li><strong>设备休眠时间</strong>：（即物联网设备没有活动流的时间间隔）</li>
</ul>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-060240.jpg" width="800"></div><br>我们使用在26周内收集的跟踪数据，在图3中绘制了一组选定的IoT设备的上述四个属性的概率分布，从图3a中可以看出每个物联网设备倾向于每个流交换少量数据。对于LiFX灯泡的情况（用红色条表示），26％的流量在[130,140]字节之间传输，20％在[120,130]字节之间传输，Belkin运动传感器的流量（由绿色条表示）略高;超过35％的流量在[2800,3800]字节之间传输。对于Amazon Echo（由蓝条表示），超过95％的流量传输少于1000个字节。虽然我们仅为少数设备提供流量直方图，但我们的大多数物联网设备都呈现出类似的可预测模式。</p>
<p>流动持续时间也出现类似的模式。参考图3（b），我们注意到Amazon Echo的流量持续时间为53秒，流量持续时间超过40％，而LiFX灯泡和Belkin运动传感器的持续时间为60秒分别为50％和21％。对于平均流速属性，图3（c）显示平均速率相当小，以每秒位数为单位，如定性预期。定量地，该图显示LiFX灯泡的平均流速为每秒18位，接近60％的时间。近30％的Belkin流的比特率在59到60比特/秒的范围内，而近40％的Amazon Echo流的比特率在70到71比特每秒的范围内。</p>
<p>最后，就设备的睡眠时间而言，图3（d）显示Belkin运动传感器和LiFX灯泡表现出明显的睡眠模式，持续时间为1秒和60秒，概率分别为73％和48％。然而，对于Amazon Echo，观察到具有小概率的多个睡眠时间。这是因为Amazon Echo使其TCP连接保持活动状态，并且只有在断开Internet连接时才会进入休眠状态。我们的测试台中的其他设备也表现得像Echo，并且似乎没有占主导地位的睡眠模式。</p>
<h3 id="IoT信令模式"><a href="#IoT信令模式" class="headerlink" title="IoT信令模式"></a>IoT信令模式</h3><p>我们现在关注应用层协议，使用端口号推断，物联网设备主要用于在LAN本地和/或外部与公共互联网上的服务器进行通信.</p>
<h4 id="服务端口号"><a href="#服务端口号" class="headerlink" title="服务端口号"></a>服务端口号</h4><p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-062418.jpg" width="800"></div><br>图4显示了从各种IoT设备发起的所有流的服务器端端口号的文字云。对于每个设备，如果更频繁地使用端口，则在相应的字云中以更大的字体大小显示它。子标题（即{}内的数字）报告每个设备的唯一服务器端口数。可以看出，IoT设备各自与少数服务器端口唯一通信，而非IoT设备使用更广泛的服务（即图4（h）中显示了2382个独特端口，其中许多非常罕见） 。我们观察到非标准端口33434,56700,8883和25050分别在源自Amazon Echo，LiFX灯泡，Awair空气质量监测器和Netatmo气象站的流量中突出显示，如图4的顶行所示。此外，我们注意到来自同一制造商的设备共享某些端口，例如，端口号8443和3478在Belkin的运动传感器，电源开关和相机之间是常见的，如图4（e）-4（g）所示。我们也注意到，众所周知的标准端口号（如53（DNS），123（NTP），0（ICMP）和1900（SSDP））被许多物联网设备以及具有各种频率的非物联网使用，如图所示在图4中。此外，许多物联网设备也使用服务器端端口号443（TLS / SSL）。</p>
<h4 id="DNS查询"><a href="#DNS查询" class="headerlink" title="DNS查询"></a>DNS查询</h4><p>DNS是几乎所有联网设备使用的常见应用程序。由于物联网设备是为特定目的而定制设计的，因此它们访问与其供应商特定的端点服务器相对应的有限数量的域，我们在图5中绘制了由几个IoT设备以及非IoT访问的域名的词云</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-063141.jpg" width="800"></div><br>可以看出，IoT设备可以通过它们与之通信的域名进行相当区分，例如，如图5（a）-5（c）所示，Amazon Echo经常请求诸如example.com，example.net和example.org之类的域。hp.com和hpeprint.com的子域在HP打印机的DNS查询中可见。但是，我们也看到一些着名的域名在不同的设备之间共享。例如，belkin.com和d3gjecg2uu2faq.cloudfront.net通常被Belkin设备（即摄像机，运动传感器和电源开关）使用，如图5（d）-5（f）所示。或者pool.ntp.org在Google Dropcam，Awair空气质量监测器和LiFX灯泡产生的交通流量方面非常突出，如图5（b）-5（h）所示，再次考虑图5（i）中的非IoT，我们看到大约12000个访问过的唯一域，与IoT设备相比，其中只有少数域被重复访问。</p>
<p>我们还发现IoT设备在使用DNS协议的频率方面存在差异，我们从流量跟踪中观察到物联网设备在其运行的不同阶段生成DNS查询;例如，仅在启动阶段（例如Google Dropcamp）或与用户（例如Hello Barbie）交互时或定期（例如Amazon Echo）如图6所示，某些IoT设备在其DNS查询的频率中表现出特征签名。</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-064238.jpg" width="800"></div><br>LiFX灯泡和Amazon Echo非常频繁地发送DNS查询（即每5分钟），但像Belkin运动传感器这样的设备每30分钟只请求一次域名。</p>
<h4 id="NTP查询"><a href="#NTP查询" class="headerlink" title="NTP查询"></a>NTP查询</h4><p>如前所述，NTP是物联网设备使用的另一种流行协议，因为精确和可验证的时序对于物联网操作至关重要。许多物联网设备倾向于以周期性方式使用NTP协议（UDP端口123），以便将它们的时间与公共可用的NTP服务器同步。例如，Awair空气质量监测器，LiFX灯泡和Google Dropcam从pool.ntp.org获取时间服务器的IP地址。我们还发现时间同步在我们的测试台中反复出现，并且许多物联网设备在使用NTP时表现出可识别的模式。例如，Belkin电源开关，LiFX灯泡和SmartThings集线器分别每隔60,300和600秒发送NTP请求，如图7的直方图所示。</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-064828.jpg" width="800"></div></p>
<h4 id="密码套件"><a href="#密码套件" class="headerlink" title="密码套件"></a>密码套件</h4><p>许多物联网设备使用TLS / SSL协议（端口号443）与Internet上 各自的服务器进行通信，为了启动TLS连接并与服务器协商安全算法，设备通过发送“客户端Hello”数据包开始握手，该数据包具有可以支持的“密码套件”列表，按其优先顺序排列。例如，图8（a）和8（b）描绘了Amazon Echo向两个不同的Amazon服务器提供的密码套件。每个密码套件（即4位代码）可以采用380个可能值中的一个，并表示密钥交换，批量加密和消息认证码（MAC）的算法</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-065458.jpg" width="800"></div><br>例如，由Amazon服务器协商的密码002f分别使用RSA，AES 128 CBC和SHA协议进行密钥交换，批量加密和消息认证。</p>
<p>在我们的设置中，我们发现28个IoT设备中有17个，包括Amazon Echo，August Doorbell Cam，Awair空气质量监视器，Belkin相机，Canary相机，Drop-cam，Google Chromecast，Hello Barbie，HP ENVY打印机,iHome，Netatmo欢迎相机，飞利浦Hue灯泡，皮克斯相框，Ring Doorbell，Trilby，Withings Aura智能睡眠传感器和Withings Scale，使用TLS / SSL进行通信.我们发现，当将SSL传送到不同的服务器时，Amazon Echo总共使用五个不同的密码套件字符串，Triby扬声器使用两个字符串，而Pixtar相框仅使用一个字符串进行所有SSL通信。</p>
<p>我们将图9中这三个设备的唯一密码套件字符串绘制为离散信号：x轴是出现在提供的套件中的4位密码的顺序，y轴是各个密码的索引（即来自{1,2，…，380}的值。</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-065922.jpg" width="800"></div><br>可以看出，密码套件信号的集合为每个IoT设备发出了唯一的签名。在特殊情况下，我们发现Pixtar photoframe与8个门铃使用的18个套件中的一个共享其单个密码套件 - 我们将在§5.2中看到，仅依靠密码套件属性将无法有效地对Pixtar相框流量进行分类..</p>
<p>然而，有许多设备很少交换密码套件，而是希望长时间保持其TLS连接存活。例如，Google Dropcam在启动时建立与其自身服务器的TLS连接，并且只要它具有网络连接就维持此连接，而Amazon Echo和Pixstar照相框每小时分别启动平均1和2个TLS连接。</p>
<p><strong>总结</strong>：在本节中，我们根据物联网设备的基础网络流量特征确定了8个关键属性。它们是流量，流量持续时间，平均流量，设备休眠时间，服务器端口号，DNS查询，NTP查询和密码套件。虽然可以通过仅考虑一个或两个流量属性（例如域名，端口号或密码套件列表）来唯一地识别某些设备（例如，Amazon Echo或LiFX灯泡），但这些设备都存在挑战。例如，在流量中很少观察到诸如密码套件列表之类的强属性（例如，每天仅一次）。作为另一示例，来自相同供应商的不同类型的设备访问类似的域并使用相同的端口号来访问云服务器。捕获诸如这些属性的出现次数（例如，访问域的次数或使用该端口的流的数量）等方面，结合其他属性，极大地提高了区分来自同一制造商的设备的预测能力。在下一节中，我们将使用这些属性的组合开发基于多阶段机器学习的算法，以帮助高精度地对物联网设备进行分类。</p>
<h2 id="基于分类模型的机器学习"><a href="#基于分类模型的机器学习" class="headerlink" title="基于分类模型的机器学习"></a>基于分类模型的机器学习</h2><p>为了从我们的跟踪数据合成属性，我们首先使用Joy工具将原始pcap文件转换为每小时流量,然后，对于给定的IoT设备，我们计算上一节中针对每小时实例定义的流量活动和信令属性。从跨越26周的跟踪中获得的每个设备的实例数取决于诸如设备在线的持续时间或设备如何生成流量（自主或交互式）等因素,例如，Blipcare BP监视器只有13个小时实例，因为它仅在用户使用设备时才生成流量。另一方面，我们为Google Dropcam收集了4177个实例</p>
<h3 id="多级设备分类架构"><a href="#多级设备分类架构" class="headerlink" title="多级设备分类架构"></a>多级设备分类架构</h3><p>我们注意到我们的三个属性，即“域名集”，“远程端口号集”和“密码套件集”是名义上的（即不被视为数值）和多值（例如，{“ 53“：3，”123“：1，”443“：2}表示一组远程端口号，其中三个出现端口号53，两次出现端口123，一次出现端口号443）。因此，我们为IoT分类器采用了两阶段分层架构，如图10所示。</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-073520.jpg" width="800"></div><br>除了这些独特的单词之外，我们将非IoT设备的所有相应单词聚合为“其他” - 每个Stage-0矩阵中称为“其他”的列表示在IoT流量中未看到的单词。该矩阵的每个单元格是给定实例中这种唯一单词的出现次数。如图10所示，阶段0的每个分类器产生两个输出，即暂定类和置信水平，其与其他单值定量属性（即流量，持续时间，速率，睡眠时间，DNS，NTP）一起（）间隔）被送入Stage-1分类器，产生最终输出（即设备识别具有置信水平）。</p>
<h4 id="第0级-字袋分类器"><a href="#第0级-字袋分类器" class="headerlink" title="第0级-字袋分类器"></a>第0级-字袋分类器</h4><p>我们使用朴素贝叶斯多分类器来分析我们机器的第0阶段中的每个单词包。已经表明[35]，当处理大量独特单词时，该分类器在文本分类中表现良好。在训练阶段，分类器采用单词的分布，例如个人独特的域名，并使用以下方法计算给定课程的每个单词的概率：</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-082106.jpg" width="500"></div><br>其中wj是训练数据集中的唯一单词（例如，端口号56700）; ci是类别标签（例如LiFX灯泡）; D是所有实例的数量。$n_l,c_i,w_j^{train}$是类标签为ci的每个实例中的wj出现次数，N是唯一字的总数（例如，我们的数据集中有N = 421个唯一端口号，在测试阶段，分类器需要为所有可能的类计算以下概率：</p>
<p><div align="center"><img src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-17-082825.jpg" width="400"></div><br>其中$W^{test}$表示${w_1:n_1^{test},w_2:n_2^{test},…,w_N:n_N^{test}}$；而$n_j^{test}$是wj在一个测试实例中的出现次数,$Pr(c_i^{train})$整个训练数据集中类ci的存在概率,（即ci训练实例的数量除以所有训练实例的总数）分类器最终选择给出一组给定单词及其出现的（2）中最大概率的类。请注意，如果训练实例在各个类之间公平分布，那么Naive Bayes Multinomial分类器就能很好地运行[35]。</p>
<h4 id="第1级-分类器"><a href="#第1级-分类器" class="headerlink" title="第1级-分类器"></a>第1级-分类器</h4><p>我们有一个阶段1分类器，它可以获取所有定量属性以及每个阶段0分类器的输出对。由于阶段1属性不是线性可分的，并且阶段0分类器的输出是标称值，因此我们使用基于随机森林的阶段1分类器。选择随机森林的另一个原因是与其他决策树分类器相比，对过度拟合的高容忍度。</p>

    </div>

    
    
    
        
      
        <div id="reward-container">
  <div></div>
  <button id="reward-button" disable="enable" onclick="var qr = document.getElementById(&quot;qr&quot;); qr.style.display = (qr.style.display === 'none') ? 'block' : 'none';">
    打赏
  </button>
  <div id="qr" style="display: none;">
        
      
      <div style="display: inline-block">
        <img src="https://ipic-picgo.oss-cn-beijing.aliyuncs.com/20200705000845.png" alt="sunhanwu 支付宝">
        <p>支付宝</p>
      </div>

  </div>
</div>

      

      <footer class="post-footer">
          
            
          
          <div class="post-tags">
            
              <a href="/sunpages/tags/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/" rel="tag"># 机器学习</a>
            
              <a href="/sunpages/tags/IoT/" rel="tag"># IoT</a>
            
              <a href="/sunpages/tags/%E7%BD%91%E7%BB%9C%E6%B5%81%E9%87%8F/" rel="tag"># 网络流量</a>
            
          </div>
        

        

          <div class="post-nav">
            <div class="post-nav-next post-nav-item">
              
                <a href="/sunpages/2019/05/05/vsftp/" rel="next" title="Linux服务器安装ftp服务">
                  <i class="fa fa-chevron-left"></i> Linux服务器安装ftp服务
                </a>
              
            </div>

            <span class="post-nav-divider"></span>

            <div class="post-nav-prev post-nav-item">
              
                <a href="/sunpages/2019/09/17/scapy/" rel="prev" title="使用python scapy库分析pcap流量文件">
                  使用python scapy库分析pcap流量文件 <i class="fa fa-chevron-right"></i>
                </a>
              
            </div>
          </div>
        
      </footer>
    
  </div>
  
  
  
  </article>

  </div>


          </div>
          
    
    <div class="comments" id="comments"></div>
  

        </div>
          
  
  <div class="sidebar-toggle">
    <div class="sidebar-toggle-line-wrap">
      <span class="sidebar-toggle-line sidebar-toggle-line-first"></span>
      <span class="sidebar-toggle-line sidebar-toggle-line-middle"></span>
      <span class="sidebar-toggle-line sidebar-toggle-line-last"></span>
    </div>
  </div>

  <aside class="sidebar">
    <div class="sidebar-inner">
        
        
        
        
      

      <ul class="sidebar-nav motion-element">
        <li class="sidebar-nav-toc">
          文章目录
        </li>
        <li class="sidebar-nav-overview">
          站点概览
        </li>
      </ul>

      <!--noindex-->
      <div class="post-toc-wrap sidebar-panel">
          <div class="post-toc motion-element"><ol class="nav"><li class="nav-item nav-level-2"><a class="nav-link" href="#摘要"><span class="nav-number">1.</span> <span class="nav-text">摘要</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#介绍"><span class="nav-number">2.</span> <span class="nav-text">介绍</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#相关工作"><span class="nav-number">3.</span> <span class="nav-text">相关工作</span></a></li><li class="nav-item nav-level-2"><a class="nav-link" href="#物联网流量收集和整合"><span class="nav-number">4.</span> <span class="nav-text">物联网流量收集和整合</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#实验试验台"><span class="nav-number">4.1.</span> <span class="nav-text">实验试验台</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#跟踪数据"><span class="nav-number">4.2.</span> <span class="nav-text">跟踪数据</span></a></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#IoT流量特征"><span class="nav-number">5.</span> <span class="nav-text">IoT流量特征</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#IoT活动和卷模式（暂时先这么翻译）"><span class="nav-number">5.1.</span> <span class="nav-text">IoT活动和卷模式（暂时先这么翻译）</span></a></li><li class="nav-item nav-level-3"><a class="nav-link" href="#IoT信令模式"><span class="nav-number">5.2.</span> <span class="nav-text">IoT信令模式</span></a><ol class="nav-child"><li class="nav-item nav-level-4"><a class="nav-link" href="#服务端口号"><span class="nav-number">5.2.1.</span> <span class="nav-text">服务端口号</span></a></li><li class="nav-item nav-level-4"><a class="nav-link" href="#DNS查询"><span class="nav-number">5.2.2.</span> <span class="nav-text">DNS查询</span></a></li><li class="nav-item nav-level-4"><a class="nav-link" href="#NTP查询"><span class="nav-number">5.2.3.</span> <span class="nav-text">NTP查询</span></a></li><li class="nav-item nav-level-4"><a class="nav-link" href="#密码套件"><span class="nav-number">5.2.4.</span> <span class="nav-text">密码套件</span></a></li></ol></li></ol></li><li class="nav-item nav-level-2"><a class="nav-link" href="#基于分类模型的机器学习"><span class="nav-number">6.</span> <span class="nav-text">基于分类模型的机器学习</span></a><ol class="nav-child"><li class="nav-item nav-level-3"><a class="nav-link" href="#多级设备分类架构"><span class="nav-number">6.1.</span> <span class="nav-text">多级设备分类架构</span></a><ol class="nav-child"><li class="nav-item nav-level-4"><a class="nav-link" href="#第0级-字袋分类器"><span class="nav-number">6.1.1.</span> <span class="nav-text">第0级-字袋分类器</span></a></li><li class="nav-item nav-level-4"><a class="nav-link" href="#第1级-分类器"><span class="nav-number">6.1.2.</span> <span class="nav-text">第1级-分类器</span></a></li></ol></li></ol></li></ol></div>
        
      </div>
      <!--/noindex-->

      <div class="site-overview-wrap sidebar-panel">
        <div class="site-author motion-element" itemprop="author" itemscope itemtype="http://schema.org/Person">
    <img class="site-author-image" itemprop="image"
      src="http://ipic-picgo.oss-cn-beijing.aliyuncs.com/2019-09-12-logo.jpg"
      alt="sunhanwu">
  <p class="site-author-name" itemprop="name">sunhanwu</p>
  <div class="site-description" itemprop="description">Talk is cheap, show me the code!</div>
</div>
  <nav class="site-state motion-element">
      <div class="site-state-item site-state-posts">
        
          <a href="/sunpages/archives/%20%7C%7C%20archive">
        
          <span class="site-state-item-count">29</span>
          <span class="site-state-item-name">博客</span>
        </a>
      </div>
    
      
      
      <div class="site-state-item site-state-categories">
        
          
            <a href="/sunpages/categories/%20%7C%7C%20th">
          
        
        <span class="site-state-item-count">7</span>
        <span class="site-state-item-name">分类</span>
        </a>
      </div>
    
      
      
      <div class="site-state-item site-state-tags">
        
          
            <a href="/sunpages/tags/%20%7C%7C%20tags">
          
        
        <span class="site-state-item-count">18</span>
        <span class="site-state-item-name">标签</span>
        </a>
      </div>
    
  </nav>
  <div class="links-of-author motion-element">
      <span class="links-of-author-item">
      
      
        
      
      
        
      
        <a href="https://github.com/sunhanwu" title="GitHub &rarr; https://github.com/sunhanwu" rel="noopener" target="_blank"><i class="fa fa-fw fa-github"></i>GitHub</a>
      </span>
    
      <span class="links-of-author-item">
      
      
        
      
      
        
      
        <a href="mailto:1965190613@qq.com" title="E-Mail &rarr; mailto:1965190613@qq.com" rel="noopener" target="_blank"><i class="fa fa-fw fa-envelope"></i>E-Mail</a>
      </span>
    
  </div>


  <div class="links-of-blogroll motion-element">
    <div class="links-of-blogroll-title">
      <i class="fa fa-fw fa-link"></i>
      Links
    </div>
    <ul class="links-of-blogroll-list">
        <li class="links-of-blogroll-item">
          <a href="https://jackyanghc.github.io/" title="https://jackyanghc.github.io/" rel="noopener" target="_blank">Jackyanghc</a>
        </li>
      
        <li class="links-of-blogroll-item">
          <a href="https://michel-liu.github.io/" title="https://michel-liu.github.io/" rel="noopener" target="_blank">Michel</a>
        </li>
      
        <li class="links-of-blogroll-item">
          <a href="https://www.cnblogs.com/morwing/" title="https://www.cnblogs.com/morwing/" rel="noopener" target="_blank">morwing</a>
        </li>
      
    </ul>
  </div>

      </div>

    </div>
  </aside>
  <div id="sidebar-dimmer"></div>


      </div>
    </main>

    <footer id="footer" class="footer">
      <div class="footer-inner">
        <div class="copyright">&copy; <span itemprop="copyrightYear">2020</span>
  <span class="with-love" id="animate">
    <i class="fa fa-user"></i>
  </span>
  <span class="author" itemprop="copyrightHolder">sunhanwu</span>
    <span class="post-meta-divider">|</span>
    <span class="post-meta-item-icon">
      <i class="fa fa-area-chart"></i>
    </span>
      <span class="post-meta-item-text">站点总字数：</span>
    
    <span title="站点总字数">161k</span>
    <span class="post-meta-divider">|</span>
    <span class="post-meta-item-icon">
      <i class="fa fa-coffee"></i>
    </span>
      <span class="post-meta-item-text">站点阅读时长 &asymp;</span>
    
    <span title="站点阅读时长">2:26</span>
</div>
  <div class="theme-info">主题 – <a href="https://theme-next.org" class="theme-link" rel="noopener" target="_blank">NexT.Pisces</a> v7.4.0</div>

        












        
      </div>
    </footer>
  </div>

  


  <script src="/sunpages/lib/anime.min.js?v=3.1.0"></script>
  <script src="/sunpages/lib/velocity/velocity.min.js?v=1.2.1"></script>
  <script src="/sunpages/lib/velocity/velocity.ui.min.js?v=1.2.1"></script>

<script src="/sunpages/js/utils.js?v=7.4.0.js"></script>

<script src="/sunpages/js/motion.js?v=7.4.0.js"></script>


<script src="/sunpages/js/schemes/pisces.js?v=7.4.0.js"></script>


<script src="/sunpages/js/next-boot.js?v=7.4.0.js"></script>




  
  <script>
    (function(){
      var bp = document.createElement('script');
      var curProtocol = window.location.protocol.split(':')[0];
      bp.src = (curProtocol === 'https') ? 'https://zz.bdstatic.com/linksubmit/push.js' : 'http://push.zhanzhang.baidu.com/push.js';
      var s = document.getElementsByTagName("script")[0];
      s.parentNode.insertBefore(bp, s);
    })();
  </script>








  
<link rel="stylesheet" href="//cdn.jsdelivr.net/npm/instantsearch.js@2/dist/instantsearch.min.css">
<script src="//cdn.jsdelivr.net/npm/instantsearch.js@2/dist/instantsearch.min.js"></script>
<script src="/sunpages/js/algolia-search.js?v=7.4.0.js"></script>
















  

  

  

  


<script>
NexT.utils.getScript('//unpkg.com/valine/dist/Valine.min.js', () => {
  var GUEST = ['nick', 'mail', 'link'];
  var guest = 'nick,mail,link';
  guest = guest.split(',').filter(item => {
    return GUEST.includes(item);
  });
  new Valine({
    el: '#comments',
    verify: false,
    notify: false,
    appId: 'ToSqcWxrMe4Fx1bTFKjHnFQn-gzGzoHsz',
    appKey: 'WIlMiWIudPsl2Q2PsMVfiUUH',
    placeholder: 'Just go go',
    avatar: 'mm',
    meta: guest,
    pageSize: '10' || 10,
    visitor: false,
    lang: '' || 'zh-cn',
    path: location.pathname
  });
}, window.Valine);
</script><!-- hexo-inject:begin --><!-- Begin: Injected MathJax -->
<script type="text/x-mathjax-config">
  MathJax.Hub.Config("");
</script>

<script type="text/x-mathjax-config">
  MathJax.Hub.Queue(function() {
    var all = MathJax.Hub.getAllJax(), i;
    for(i=0; i < all.length; i += 1) {
      all[i].SourceElement().parentNode.className += ' has-jax';
    }
  });
</script>

<script type="text/javascript" src="">
</script>
<!-- End: Injected MathJax -->
<!-- hexo-inject:end -->

</body>
</html>
